package NGUYENVANTHANG_kt;

public class CONTROLLERS_HV {
	 /***
     * Nghiệp vụ tính diện tích cho các đối tượng hình học
     * @param shOpt
     * + shOpt = 0: Hình tam giác
     * + shOpt = 1: Hình bát giác
     * + shOpt = 2: Hình vuông
     * + shOpt = 3: Hình chữ nhật
     * @param objMetric - Đối tượng hình học (có thể là Tam giác, bát giác,...)
     * @return - Giá trị diện tích của đối tượng hình đó
     */
    public double getArea(short shOpt, Object objMetric) {
        double results = 0;
        switch (shOpt) {
        /* TH: Hình vuông */
        case 0: {
            // Tường minh ép kiểu về Object tương ứng
            SquareEntity obj = (SquareEntity) objMetric;
            // float a = (float)2.5;

            // Tính diện tích tam giác
            results = ((SquareEntity) objMetric).getArea(objMetric);
        }
            break;}
		return results;}

        /* TH: Hình vuông */
       
    public double getPerimetter(short shOpt, Object objMetric) {
        double results = 0;
        switch (shOpt) {
        /* TH: Hình vuong */
        case 0: {
            // a. Tường minh ép kiểu về Object tương ứng
        	SquareEntity obj = (SquareEntity) objMetric;

            // b. Tính chu vi cho hình Tam Giác
            results = obj.getPerimeter(obj);
        }
            break;
        }
        return results;
    }
}
